import 'package:flutter/material.dart';

class HouseItem extends StatefulWidget {
    HouseItem({super.key,required this.houseItem});
  Map houseItem = {};

  @override
  State<HouseItem> createState() => _HouseItemState();
}

class _HouseItemState extends State<HouseItem> {
  Map house = {};
  @override
  void initState() {
    setState(() {
    house = widget.houseItem;     
    });
    super.initState();
  }

  Widget _buildTagItem(int status) {
    List tagList = [
      {},
      {
        'title': '正在审核',
        'bgcolor': const Color.fromARGB(50, 0, 0, 255),
        'color': const Color.fromARGB(255, 0, 0, 255)
      },
      {
        'title': '审核通过',
        'bgcolor': const Color.fromARGB(50, 0, 255, 0),
        'color': const Color.fromARGB(255, 0, 255, 0)
      },
      {
        'title': '审核失败',
        'bgcolor': const Color.fromARGB(50, 255, 0, 0),
        'color': const Color.fromARGB(255, 255, 0, 0)
      },
    ];

    return Container(
        padding: const EdgeInsets.only(left: 5, right: 5, top: 2, bottom: 2),
        decoration: BoxDecoration(
            color: tagList[status]['bgcolor'],
            borderRadius: BorderRadius.circular(5)),
        child: Text(tagList[status]['title'],
            style: TextStyle(color: tagList[status]['color'])));
  }


  @override
  Widget build(BuildContext context) {
    return GestureDetector(
      onTap: () {
        Navigator.pushNamed(context, '/house_detail', arguments: {"id": house['id']});
      },
      child: Container(
      padding: const EdgeInsets.all(10),
      decoration: const BoxDecoration(
        color: Colors.white,
      ),
      child: Column(
        children: [
          Row(
            children: [
              Expanded(
                child: Text(house['point'])
              ),
              const Spacer(),
              _buildTagItem(house['status'])
            ],
          ),
          const SizedBox(height: 15),
          Row(
            children: [
              Text('房间号', style: TextStyle(color: Colors.grey),),
              Spacer(),
              Expanded(child: Text(
                '${house['room']}室',
              textAlign: TextAlign.right,)),
            ],
          ),
          const SizedBox(height: 15),
          Row(
              children: [
                Text(
                  '业主',
                  style: TextStyle(color: Colors.grey),
                ),
                Spacer(),
                Expanded(
                    child: Text(
                  house['name'],
                  textAlign: TextAlign.right,
                )),
              ],
            ),
        ],
      ),
    ),
    );
  }
}